<!DOCTYPE html>
<html xmlns:th="http://www.thymeleaf.org">

<head>
    <meta charset="utf-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">

    <title>产线管理</title>
    <meta name="keywords" content="">
    <meta name="description" content="">

    <link rel="shortcut icon" th:href="@{/favicon.ico}">
    <link th:href="@{/css/bootstrap.min.css}" rel="stylesheet">
    <link th:href="@{/css/font-awesome.css}" rel="stylesheet">
    <link th:href="@{/css/animate.css}" rel="stylesheet">
    <link th:href="@{/css/style.css}" rel="stylesheet">
    <link th:href="@{/self/self-common.css}" rel="stylesheet">

    <link th:href="@{/css/plugins/bootstrap-table/bootstrap-table.min.css}" rel="stylesheet">
    <link th:href="@{/css/plugins/bootstrap-select/bootstrap-select.css}" rel="stylesheet">

    <!--zTree-->
    <link th:href="@{/self/zTree/metroStyle.css}" rel="stylesheet"/>

    <link th:href="@{/css/plugins/sweetalert/sweetalert.css}" rel="stylesheet">
</head>

<body class="gray-bg">

<div class="ui-layout-west">
    <div class="box box-main">
        <div class="box-header">
            <div class="box-title">车间</div>
        </div>
        <div class="ui-layout-content">
            <div id="tree" class="ztree"></div>
        </div>
    </div>
</div>

<div class="ui-layout-resizer ui-layout-resizer-open">
    <div class="ui-layout-toggler" title="折叠">
        <span class="ui-content content-open" style="display: block;"><i class="fa fa-caret-left"></i></span>
        <span class="ui-content content-closed" style="display: none;"><i class="fa fa-caret-right"></i></span>
    </div>
</div>

<div class="ui-layout-center">
    <div class="wrapper wrapper-content animated fadeInRight">

        <div class="row">
            <div class="col-sm-12 search-card">
                <div class="ibox">
                    <div class="ibox-content">

                        <form class="form-inline">
                            <div class="form-group searchCX">
                                <input id="searchLineSn" class="form-control" type="text" placeholder="请输入产线编号"
                                       clearable>
                            </div>
                            <div class="form-group searchCX">
                                <input id="searchLineName" class="form-control" type="text" placeholder="请输入产线名称"
                                       clearable>
                            </div>
<!--                            <div class="form-group">-->
<!--                                <select id="searchLineType" class="selectpicker show-tick" data-live-search="true"-->
<!--                                        title="选择产线类别" clearable>-->
<!--                                    <option value="0">全部</option>-->
<!--                                    <option value="1">灌装产线</option>-->
<!--                                    <option value="2">包装产线</option>-->
<!--                                </select>-->
<!--                            </div>-->
                            <div class="form-group">
                                <button id="btnSearch" class="btn btn-purple" type="button">
                                    <i class="fa fa-search"></i>
                                    查询
                                </button>
                            </div>
                        </form>

                    </div>
                </div>
            </div>

            <div class="col-sm-12 table-card">
                <div class="ibox">
                    <div class="ibox-title">
                        <h5>
                            <i class="fa fa-bookmark"></i>
                            产线管理
                        </h5>
                    </div>
                    <div class="ibox-content">
                        <div id="toolbar">
                            <form class="form-inline btnOpacity">
                                <div class="btn-group">
                                    <button class="btn btn-purple" type="button" id="btnAdd">
                                        <i class="fa fa-plus-circle"></i>
                                        新增
                                    </button>
                                </div>
                                <div class="form-group">
                                    <button id="importBtn" class="btn btn-purple" type="button" data-toggle="modal" data-target="#modalExl">
                                        <i class="fa fa-upload"></i>
                                        导入
                                    </button>
                                </div>
                                <div class="form-group">
                                    <button id="export" class="btn btn-orange" type="button">
                                        <i class="fa fa-download"></i>
                                        导出
                                    </button>
                                </div>
                            </form>
                        </div>
                        <table id="dataTable" data-mobile-responsive="true"></table>
                    </div>
                </div>
            </div>
        </div>

        <div class="modal inmodal fade" id="myModal">
            <div class="modal-dialog modal-lg">
                <div class="modal-content">
                    <div class="modal-header">
                        <h4 class="modal-title">编辑产线</h4>

                        <button type="button" class="close" data-dismiss="modal">×</button>
                    </div>
                    <div class="modal-body">

                        <div class="col-md-12">
                            <div class="form-group">
                                <label class="col-sm-3 control-label">产线编号：</label>
                                <div class="col-sm-7">
                                    <input id="line_code_edit" type="text" name="" class="form-control"
                                           placeholder="请输入产线编号">
                                </div>
                            </div>

                            <div class="form-group">
                                <label class="col-sm-3 control-label">产线名称：</label>
                                <div class="col-sm-7">
                                    <input id="line_name_edit" type="text" name="" class="form-control"
                                           placeholder="请输入产线名称">
                                </div>
                            </div>

<!--                            <div class="form-group">-->
<!--                                <label class="col-sm-3 control-label">产线类型：</label>-->
<!--                                <div class="col-sm-7">-->
<!--                                    <select id="line_type_edit" class="selectpicker show-tick" data-live-search="true"-->
<!--                                            title="选择产线类别">-->

<!--                                        <option value="1">灌装产线</option>-->
<!--                                        <option value="2">包装产线</option>-->
<!--                                    </select>-->
<!--                                </div>-->
<!--                            </div>-->

                            <div class="form-group">
                                <label class="col-sm-3 control-label">产线描述：</label>
                                <div class="col-sm-7">
                                    <input id="line_desc_edit" type="text" name="" class="form-control"
                                           placeholder="请输入产线描述">
                                </div>
                            </div>

                            <div class="form-group">
                                <label class="col-sm-3 control-label">备注：</label>
                                <div class="col-sm-7">
                                    <textarea class="form-control diff-textarea" id="line_info_edit" rows="6"
                                              autocomplete="off" placeholder="请输入备注"></textarea>
                                </div>
                            </div>
                        </div>
                    </div>
                    <div class="modal-footer">
                        <button type="button" class="btn btn-white btn-close" data-dismiss="modal">取消</button>
                        <button type="button" class="btn btn-purple btn-save" id="btnSave">保存</button>
                        <input type="hidden" id="hf_id" value="0">
                    </div>
                </div>
            </div>
        </div>

        <!--导入模态框-->
        <div class="modal inmodal fade" id="modalExl">
            <div class="modal-dialog modal-lg">
                <div class="modal-content">
                    <div class="modal-header">
                        <h4 class="modal-title">工单导入</h4>
                        <button type="button" class="close" data-dismiss="modal" onclick="removeImp()">×</button>
                    </div>
                    <div class="modal-body">
                        <div class="col-md-12">
                            <div class="form-group">
                                <div class="import_btn" style="width:100%;text-align:left">
                                    <label for="import" ><span>选择文件</span></label>
                                    <span id="fileName">未上传文件</span>
                                </div>
                                <input type="file" id="import" onchange="loadFile(this.files[0])" name="import" style="width: 220px;opacity:0">
                            </div>
                            <div class="form-group">
                                <a class="downtele" style="text-align:left;" href="#" onclick="downLoadTemp();" ><span style="padding:5px ;font-size:16px;font-weight:200;color:#337ab7">模板下载</span></a>
                            </div>
                        </div>

                    </div>
                    <div class="modal-footer">
                        <button type="button" class="btn btn-white btn-close" data-dismiss="modal" onclick="removeImp()">取消</button>
                        <button type="button" class="btn btn-purple btn-save" id="saveExl" onclick="mySubmit()">保存</button>
                    </div>
                </div>
            </div>
        </div>


    </div>
</div>
<!-- 全局js -->
<script th:src="@{/js/jquery.min.js}"></script>
<script th:src="@{/js/bootstrap.min.js}"></script>
<script th:src="@{/js/content.js}"></script>
<script th:src="@{/js/app.js}" type="text/javascript"></script>

<!-- Bootstrap table -->
<script th:src="@{/js/plugins/bootstrap-table/bootstrap-table.min.js}"></script>
<script th:src="@{/js/plugins/bootstrap-table/bootstrap-table-mobile.min.js}"></script>
<script th:src="@{/js/plugins/bootstrap-table/locale/bootstrap-table-zh-CN.min.js}"></script>
<!--提示框-->
<script th:src="@{/js/plugins/layer/layer.min.js}"></script>
<!--下拉选择框-->
<script th:src="@{/js/plugins/bootstrap-select/bootstrap-select.js}"></script>
<!--日期-->
<script th:src="@{/js/plugins/layer/laydate/laydate.js}"></script>

<!--bootstrap导出-->
<script th:src="@{/js/plugins/bootstrap-table-export/bootstrap-table-export.js}"></script>
<script th:src="@{/js/plugins/bootstrap-table-export/tableExport.js}"></script>

<!--zTree-->
<script th:src="@{/self/zTree/jquery.ztree.all.min.js}"></script>
<script th:src="@{/js/plugins/sweetalert/sweetalert.min.js}"></script>
<script th:src="@{/self/zTree/self-zTree.js}"></script>

<script>


    var shopId = '';
    var lineId = '';

    var lineAddOrUpd = 0; // 0-- add  1 -- upd

    //搜索按钮
    $("#btnSearch").on('click', function (e) {

        $("#dataTable").bootstrapTable('refresh');
    })

    var settingss = {
        view: {
            showIcon: false,
            showLine: false
        },
        data: {
            simpleData: {
                enable: true, //true 、 false 分别表示 使用 、 不使用 简单数据模式
                idKey: "id", //节点数据中保存唯一标识的属性名称
                pIdKey: "pId", //节点数据中保存其父节点唯一标识的属性名称
                rootPId: -1 //用于修正根节点父节点数据，即 pIdKey 指定的属性值
            },
            key: {
                name: "name" //zTree 节点数据保存节点名称的属性名称  默认值："name"
            }
        },
        check: {
            enable: false, //true 、 false 分别表示 显示 、不显示 复选框或单选框
            nocheckInherit: true //当父节点设置 nocheck = true 时，设置子节点是否自动继承 nocheck = true
        },
        callback: {
            onClick: zTreeOnClick,
        }
    };

    function zTreeOnClick(event, treeId, treeNode) {
        if (treeNode.id != 1) {
            shopId = treeNode.id;

        } else {
            shopId = "";
        }
        $('#dataTable').bootstrapTable('refresh');
        lineId = '';
        ztreeStyle(event, treeId, treeNode)//改变ztree样式
    }


    $(document).ready(function () {

        function queryParams(params) {
            return {
                pageSize: params.pageSize,
                pageNumber: params.pageNumber,

                line_sn: $.trim($("#searchLineSn").val()),
                line_name: $.trim($("#searchLineName").val()),
                // line_type: $("#searchLineType").val(),
                shop_id: shopId
            }
        }

        $('#dataTable')
            .bootstrapTable({
                url: baseUrl + "getLinePageList",
                method: "post",
                queryParamsType: "",
                queryParams: queryParams,
                pageNumber: 1, //初始化加载第一页，默认第一页
                pageSize: 10, //每页的记录行数（*）
                striped: false, //是否显示行间隔色
                cache: false, //是否使用缓存，默认为true，所以一般情况下需要设置一下这个属性（*）
                search: false, //是否显示搜索框功能
                pagination: true, //是否分页
                showRefresh: false, //是否显示刷新功能
                showToggle: false,
                showColumns: false,
                // clickToSelect: true, //是否启用点击选中行
                // uniqueId: "indentId", //每一行的唯一标识，一般为主键列
                // idField: "indentId",
                formatSearch: function () {
                    return "产线管理";
                },
                iconSize: 'outline',
                sidePagination: "server", //服务端请求
                showExport: false,//显示导出按钮
                buttonsAlign: "right",  //按钮位置
                exportTypes: ['excel'],  //导出文件类型
                pageList: [10, 20, 30, 'all'],
                exportDataType: "basic",//导出类型 'basic':当前页, 'all', 'selected'.
                toolbar: '#toolbar', //工具按钮用哪个容器
                icons: {
                    refresh: 'glyphicon-repeat',
                    toggle: 'glyphicon-list-alt',
                    columns: 'glyphicon-list',
                    export: 'glyphicon-export'
                }
                , responseHandler: function (res) {
                    var rows = [];
                    if (res.total !== 0) {
                        rows = res.list;
                    }
                    var result = {
                        rows: rows,
                        total: res.total
                    };
                    return result;
                },
                onEditableSave: function (field, row, oldValue, $ele) {
                    //更新数据到数据库

                },
                columns: [{
                    field: 'line_sn',
                    title: '产线编号',
                    formatter: function (value, row, index) {
                        if (value == null) {
                            return '';
                        } else {
                            return value;
                        }
                    }
                }, {
                    field: 'line_name',
                    title: '产线名称',
                    formatter: function (value, row, index) {
                        if (value == null) {
                            return '';
                        } else {
                            return value;
                        }
                    }
                }, {
                    field: 'line_desc',
                    title: '产线描述',
                    formatter: function (value, row, index) {
                        if (value == null) {
                            return '';
                        } else {
                            return value;
                        }
                    }
                }, {
                    field: 'shopName',
                    title: '所属车间',
                    formatter: function (value, row, index) {
                        if (value == null) {
                            return '';
                        } else {
                            return value;
                        }
                    }
                }, {
                    field: 'create_time',
                    title: '创建时间',
                    formatter: function (value, row, index) {
                        if (value == null) {
                            return '';
                        } else {
                            return value;
                        }
                    }
                }, {
                    field: 'userName',
                    title: '创建人',
                    formatter: function (value, row, index) {
                        if (value == null) {
                            return '';
                        } else {
                            return value;
                        }
                    }
                }, {
                    field: 'remarks',
                    title: '备注',
                    formatter: function (value, row, index) {
                        if (value == null) {
                            return '';
                        } else {
                            return value;
                        }
                    }
                }, {
                    field: 'operation',
                    title: '操作',
                    align: 'center',
                    width: '100',
                    formatter: function (value, row, index) {
                        var startBtn = "<button type='button' class = 'btn btngroup btn-xs czIcon icon_edit' onclick='editLine(\"" + row.id + "\")' title='编辑'></button>";
                        var closeBtn = "<button type='button' class = 'btn btngroup btn-xs czIcon icon_close'  onclick='deleteLine(\"" + row.id + "\")' title='删除'></button>";
                        return startBtn + closeBtn;
                    }
                }
                    // {
                    //     field: 'state',
                    //     title: '状态',
                    //     formatter: function (value, row, index) {
                    //         if (row.state == '1') {
                    //             return '正常';
                    //         } else {
                    //             return '停用';
                    //         }
                    //     }
                    // }
                ],

                onClickRow: function (row, $element) {
                    $('.info').removeClass('info');
                    $($element).addClass('info');
                    lineId = row.id;
                }
            });

        $.ajax({
            type: "post",
            url: baseUrl + "getShopTree",
            dataType: "json",
            success: function (res) {
                zTreeObj = $.fn.zTree.init($("#tree"), settingss, res); //初始化树
                zTreeObj.expandAll(true); //true 节点全部展开、false节点收缩
            }
        });

        $("#myModal").on("hidden.bs.modal", function () {
            $("#line_code_edit").val("");
            $("#line_name_edit").val("");
            $("#line_desc_edit").val("");
            $("#line_info_edit").val("");
            //$("#line_type_edit").val("").selectpicker('refresh');
        });

    });

    //新增按钮
    $("#btnAdd").on('click', function (e) {
        if (shopId == "") {
            layer.msg("请先选择车间");
            return
        }
        lineAddOrUpd = 0;
        $('#myModal .modal-header .modal-title').empty().text("新增产线");
        $('#myModal').modal();
    })

    //修改按钮
    function editLine(editLineId) {
        PostWebApi("getLineById", {
            id: editLineId,
        }).done(function (data) {
            $("#line_code_edit").val(data.line_sn);
            $("#line_name_edit").val(data.line_name);
            $("#line_desc_edit").val(data.line_desc);
            $("#line_info_edit").val(data.remarks);
            //$("#line_type_edit").val(data.line_type);
            //$("#line_type_edit").selectpicker('refresh');
            lineAddOrUpd = 1;
            $('#myModal .modal-header .modal-title').empty().text("修改产线");
            $('#myModal').modal();
        });
        lineId = editLineId
    }

    //删除按钮
    function deleteLine(deleteLineId) {
        swal({
            title: "您确定删除该产线吗",
            type: "warning",
            showCancelButton: true,
            cancelButtonText: "取消",
            confirmButtonColor: "rgb(85 221 218)",
            confirmButtonText: "确定",
            closeOnConfirm: false
        }, function () {
            swal.close();
            PostWebApi("deleteLine", {
                id: deleteLineId,
            }).done(function (data) {
                if (data.code == 0) {
                    $("#dataTable").bootstrapTable('refresh');
                    lineId = '';
                } else {
                    layer.msg(data.msg);
                }
            });
        })
    }

    //保存
    $("#btnSave").on('click', function (e) {
        var line_code_edit = $("#line_code_edit").val();
        var line_name_edit = $("#line_name_edit").val();
        var line_desc_edit = $("#line_desc_edit").val();
        var line_info_edit = $("#line_info_edit").val();
        //var line_type_edit = $("#line_type_edit").val();
        // if (line_type_edit == 0) {
        //     layer.msg("请选择产线类型")
        //     return
        // }
        if (line_code_edit == "") {
            layer.msg("请填写产线编号")
            return
        }
        var id;
        if (lineAddOrUpd == 0) {
            id = 0;
        } else {
            id = lineId;
        }
        PostWebApi("editLine", {
            line_sn: line_code_edit,
            line_name: line_name_edit,
            //line_type: line_type_edit,
            line_desc: line_desc_edit,
            shop_id: shopId,
            remarks: line_info_edit,
            id: id
        }).done(function (data) {
            if (data.code === 0) {
                $("#myModal").modal('hide');
                $('#dataTable').bootstrapTable('refresh');
                lineId = '';
            } else {
                layer.msg(data.msg);
            }
        });
    })

    //----------------------------EXCEL-------------------------------------
    // 使用tableExport.js导出数据
    $("#export").click(function () {
        $('#dataTable').tableExport(
            {
                type: 'excel',//导出excel
                escape: 'false',
                ignoreColumn: [7],  //忽略某一列的索引
                fileName: '产线信息',  //文件名称设置
                worksheetName: '产线信息',  //表格工作区名称
                tableName: '产线信息',
                excelstyles: ['background-color', 'color', 'font-size', 'font-weight']
            }
        )
    })

    //下载导入模版
    function downLoadTemp(){
        window.location.href =baseUrl + "downLineExcelTemplate?fileName=产线导入模版";
    }

    //移除文件文字
    function removeImp(){
        var file = document.getElementById('import');
        file.value = ''; //虽然file的value不能设为有字符的值，但是可以设置为空值
        //或者
        //file.outerHTML = file.outerHTML; //重新初始化了file的html
        $("#fileName").html('未上传文件');
    }

    //加载文件名
    function loadFile(file){
        $("#fileName").html(file.name);
    }

    //导入excel文件信息
    function mySubmit(){
        var  file = document.getElementById("import").files[0];
        var fileName=$("#fileName").val();
        var preffix = fileName.substring(fileName.lastIndexOf("\\") + 1, fileName.lastIndexOf("."));
        var suffix = fileName.substring(fileName.lastIndexOf("."));
        //创建新的表单数据对象
        var formData = new FormData();
        formData.append("file", file);
        formData.append("preffix", preffix);
        formData.append("suffix", suffix);
        $.ajax({
            url: baseUrl +"lineImport",
            type: "POST",
            contentType: false,
            datatype: "text",
            data: formData,
            processData: false, // 告诉jQuery不要去处理发送的数据
            success: function (data) {
                $('#dataTable').bootstrapTable('refresh');
                layer.msg(data.msg)
            }
        });
        removeImp();
        $('#modalExl').modal('hide');
        return false;
    }

</script>


</body>

</html>

